﻿
Imports Microsoft.Practices.Composite.Events
Imports Microsoft.Practices.Composite.Regions
Imports Microsoft.Practices.Composite.Wpf.Events
Imports Hinshelwood.TFSStickyBuddy.Infrastructure
Imports Microsoft.Practices.Composite.Wpf.Commands

'Imports Hinshelwood.TFSStickyBuddy.Infrastructure.Models
'Imports Hinshelwood.TFSStickyBuddy.Modules.News.Article

Public Class CodeplexProjectController
    Implements ICodeplexProjectController



    Private ReadOnly m_regionManager As IRegionManager
    '   Private ReadOnly m_articlePresentationModel As IArticlePresentationModel
    Private ReadOnly m_eventAggregator As IEventAggregator
    '   Private ReadOnly m_readerPresenter As INewsReaderPresenter
    Private Shared m_NotImplementedCommand As DelegateCommand(Of String)

    Public Sub New(ByVal regionManager As IRegionManager, ByVal eventAggregator As IEventAggregator)
        Me.m_regionManager = regionManager
        ' Me.m_articlePresentationModel = articlePresentationModel
        Me.m_eventAggregator = eventAggregator
        '    me.m_articlePresentationModel.Controller =me
        m_NotImplementedCommand = New DelegateCommand(Of String)(AddressOf OnNotImplementedExecuted)
    End Sub

    Sub OnNotImplementedExecuted(ByVal nill As String)
        m_eventAggregator.GetEvent(Of Events.NotImplementedEvent)().Publish(New Events.NotImplementedPayload("Code Project", Me.GetType, "none"))
    End Sub

    Public Sub Run() Implements ICodeplexProjectController.Run

    End Sub

    Public ReadOnly Property NotImplementedCommand() As Microsoft.Practices.Composite.Wpf.Commands.DelegateCommand(Of String) Implements ICodeplexProjectController.NotImplementedCommand
        Get
            Return m_NotImplementedCommand
        End Get
    End Property

End Class
